While firewalls prevent unauthorized access to devices within the firewall boundary, communications with a protected device may be problematic. Communication with a device in a network address translation (NAT) environment may be problematic as well. A NAT generally permits assigning private addresses to devices within the NAT. The NAT may allow private networks to grow while affording some protection as devices within the NAT boundary may not be reached from outside the NAT boundary because the private address, assigned in the NAT, may not be globally reachable.
Interactive connectivity establishment (ICE) may be used to facilitate communications with devices protected in the above manner. In implementations, ICE procedures may permit a target device to return a signaling device the port identification used by the signaling device. Using ICE, a target device may inform the device attempting to establish communication (i.e., the NAT protected device) from which port the original communication was received. In this manner, the device attempting communication may understand how the communication was routed.
Although ICE addresses issues related to traversing firewalls and NAT environments, some devices are not ICE capable and may not communicate with ICE devices. For example, non-ICE enabled devices may not signal an ICE device to establish communication or be capable of handling the available address “negotiation” associated with ICE and so on.